This invention relates to methods for ensuring functional equivalence between implementations of a user's logic design in a programmed field-programmable gate array (“FPGA”) and a structured application-specific integrated circuit (“ASIC”).
References such as Chua et al. U.S. Pat. No. 7,243,329, Yuan et al. U.S. Pat. No. 7,373,631, Schleicher et al. U.S. Pat. No. 7,360,197, Yuan et al. U.S. Pat. No. 7,246,339, Pedersen et al. U.S. Pat. No. 7,406,668, Lim et al. U.S. patent application publication 2006/0267661, Schleicher et al. U.S. Pat. No. 7,275,232, and Tan et al. U.S. Pat. No. 7,243,315 discuss techniques for implementing a user's logic design in either a programmed FPGA or a structured ASIC. One typical objective of these techniques is for these two types of implementations to be functionally equivalent to one another. An important part of these techniques is the use of libraries of structured ASIC implementations of programmed FPGA functions that have been worked out in advance. For example, this greatly speeds up and improves the reliability of the process of providing a structured ASIC that is functionally equivalent to an FPGA programmed to perform a user's logic design. Because of the importance of these libraries, it is correspondingly important to ensure that the information contained in them will serve the intended purpose of functional equivalence.